package com.ruoyi.commodity.domain;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 商品对象 commodity
 *
 * @author ruoyi
 * @date 2024-01-14
 */
@TableName("commodity")
public class Commodity implements Serializable
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String name;

    /** 图片 */
    @Excel(name = "图片")
    private String picture;

    /** 简介 */
    @Excel(name = "简介")
    private String introduction;

    @Excel(name = "赛季id")
    private String playSeasonId;

    /** 类型1和牛2安格斯 */
    @Excel(name = "类型1和牛2安格斯")
    private Integer type;

    @Excel(name = "分类 1赛季商品2普通商品")
    private Integer classify;

    @Excel(name = "库存")
    private Integer stock;

    /** 是否热卖1否2热卖默认1 */
    @Excel(name = "是否热卖1否2热卖默认1")
    private Integer isHot;

    /** 区域例如澳洲乌拉圭 */
    @Excel(name = "区域例如澳洲乌拉圭")
    private String region;

    /** 级别例如1普通级2精品级 */
    @Excel(name = "级别例如1普通级2精品级")
    private String level;

    /** 删除标识0否1是 */
    @Excel(name = "删除标识0否1是")
    private Integer isDeleted;

    /** 排序 */
    @Excel(name = "排序")
    private Integer sort;

    /** 普通积分 */
    @Excel(name = "普通积分")
    private BigDecimal normalIntegral;

    /** vip积分 */
    @Excel(name = "vip积分")
    private BigDecimal vipIntegral;

    /** 价格 */
    @Excel(name = "价格")
    private BigDecimal price;

    /** vip价格 */
    @Excel(name = "vip价格")
    private BigDecimal vipPrice;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    public String getPlaySeasonId() {
        return playSeasonId;
    }

    public void setPlaySeasonId(String playSeasonId) {
        this.playSeasonId = playSeasonId;
    }

    public Integer getClassify() {
        return classify;
    }

    public void setClassify(Integer classify) {
        this.classify = classify;
    }

    public Integer getStock() {
        return stock;
    }

    public void setStock(Integer stock) {
        this.stock = stock;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setPicture(String picture)
    {
        this.picture = picture;
    }

    public String getPicture()
    {
        return picture;
    }
    public void setIntroduction(String introduction)
    {
        this.introduction = introduction;
    }

    public String getIntroduction()
    {
        return introduction;
    }
    public void setType(Integer type)
    {
        this.type = type;
    }

    public Integer getType()
    {
        return type;
    }
    public void setIsHot(Integer isHot)
    {
        this.isHot = isHot;
    }

    public Integer getIsHot()
    {
        return isHot;
    }
    public void setRegion(String region)
    {
        this.region = region;
    }

    public String getRegion()
    {
        return region;
    }
    public void setLevel(String level)
    {
        this.level = level;
    }

    public String getLevel()
    {
        return level;
    }
    public void setIsDeleted(Integer isDeleted)
    {
        this.isDeleted = isDeleted;
    }

    public Integer getIsDeleted()
    {
        return isDeleted;
    }
    public void setSort(Integer sort)
    {
        this.sort = sort;
    }

    public Integer getSort()
    {
        return sort;
    }
    public void setNormalIntegral(BigDecimal normalIntegral)
    {
        this.normalIntegral = normalIntegral;
    }

    public BigDecimal getNormalIntegral()
    {
        return normalIntegral;
    }
    public void setVipIntegral(BigDecimal vipIntegral)
    {
        this.vipIntegral = vipIntegral;
    }

    public BigDecimal getVipIntegral()
    {
        return vipIntegral;
    }
    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice()
    {
        return price;
    }
    public void setVipPrice(BigDecimal vipPrice)
    {
        this.vipPrice = vipPrice;
    }

    public BigDecimal getVipPrice()
    {
        return vipPrice;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("picture", getPicture())
            .append("introduction", getIntroduction())
            .append("type", getType())
            .append("isHot", getIsHot())
            .append("region", getRegion())
            .append("level", getLevel())
            .append("isDeleted", getIsDeleted())
            .append("createTime", getCreateTime())
            .append("sort", getSort())
            .append("normalIntegral", getNormalIntegral())
            .append("vipIntegral", getVipIntegral())
            .append("price", getPrice())
            .append("vipPrice", getVipPrice())
            .toString();
    }
}
